Line Graphs
Below is a set of different line graphs where year is the x axis and
y is the percent prealtered. Each line refers to a different group of
cats.
Intake Type
Since we kept the first intake date recorded for each animal, an
intake type of “Return” does not make sense. However, there are some
instances where an intake type of Return will show up. For example, the
“Return” intake type most likely came from adoptions that occurred prior
to January 2019.
Our sample shows that cats transferred in have the highest proportion
prealtered compared to the other intake types, beside “return”. There is
a 12 percentage point gap between transfered in cats and owner
surrendered that has remained constant since 2020. Stray and seized have
the lowest proportion prealtered compared to the other intake types.
Age Group at Intake
As expected, a higher proportion of older cats come in prealtered vs
younger cats. Both senior cats and adult cats experienced a drop of 7
percentages for percent prealtered from 2019 to 2024. Cats experience
large gaps in the percent prealtered between seniors, adults, and
juvenile aged cats. There is a 31 percentage point gap between senior
and adult cats, and there is a 20 percentage point gap between adult and
juvenile cats.
Same questions as for dogs, is it odd that the percent prealtered at
intake for senior and adult dogs is not higher? I would expect that by
the time an animal is a senior or older adult that they would have been
spayed or neutered at some point in their life.
Sex
Male catss have a higher proportion coming in prealtered than female
cats. Their proportions fell at similar rates.
Statistical Tests
##
## Adult Juvenile Neonate Senior Weaned
## 703577 189823 36826 118861 86934
## [1] 155
## [1] 0.06131895
## [1] 0.05485814
## [1] 62320
## [1] 42262
## [1] "Chi Square Test Result"
##
## Pearson's Chi-squared test with Yates' continuity correction
##
## data: contingency_table
## X-squared = 15534, df = 1, p-value < 2.2e-16
## [1] 0.1549593
## Average Odds Ratio: 2.023944
## Average P-Value: 0.001947673
## Average 95% CI: [ 1.512351 , 2.70867 ]
## Strays have 2 times the odds of comming in not prealtered compared to owner surrenders when controlling for year
#Logistic Regression
Things to check prior to reporting results
- The outcome needs to be dichotomous. Pass
- The observations need to be independent/no duplicates. Unsure. Is
there multiple intakes per animal? I can’t remember if I filtered for
only unique animals. I am fairly certain I did. I removed duplicate
unique animals, but there is always a possibility that a new id was
given to the same animal. I do not this is the case enough to worry
about it. Pass.
- No perfect predictor. Pass
- linearity of the logit. Not Applicable until I add continous
variables
- Abscence of multi colinearity. Since my categorical variables are
factors, they may be converted to 0/1 values which may cause there to be
colinearity. PASS
- Adequate Sample Size. Pass
##
## Adult Juvenile Senior
## 1150167 470487 182712
##
## Owner/Guardian Surrender Return Stray
## 463549 17704 630967
##
## Call:
## glm(formula = prealtered ~ sex + size + intake_type + intake_year +
## `Age Group at Intake`, family = "binomial", data = dogs_dat_for_Log_r)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -0.039888 0.009295 -4.291 1.78e-05 ***
## sexM 0.128371 0.006360 20.184 < 2e-16 ***
## sizeM -0.104564 0.007427 -14.079 < 2e-16 ***
## sizeS -0.306407 0.008099 -37.832 < 2e-16 ***
## intake_typeReturn 3.122264 0.043538 71.713 < 2e-16 ***
## intake_typeStray -0.923166 0.006421 -143.777 < 2e-16 ***
## intake_year2020 -0.237768 0.009641 -24.663 < 2e-16 ***
## intake_year2021 -0.268477 0.009517 -28.209 < 2e-16 ***
## intake_year2022 -0.392334 0.009442 -41.551 < 2e-16 ***
## intake_year2023 -0.513205 0.009565 -53.654 < 2e-16 ***
## `Age Group at Intake`Juvenile -1.187520 0.011266 -105.406 < 2e-16 ***
## `Age Group at Intake`Senior 0.992228 0.008653 114.671 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 688803 on 566919 degrees of freedom
## Residual deviance: 610522 on 566908 degrees of freedom
## AIC: 610546
##
## Number of Fisher Scoring iterations: 5
## OR 2.5 % 97.5 %
## (Intercept) 0.9608973 0.9435499 0.9785637
## sexM 1.1369747 1.1228898 1.1512362
## sizeM 0.9007175 0.8877015 0.9139245
## sizeS 0.7360873 0.7244948 0.7478652
## intake_typeReturn 22.6977198 20.8411765 24.7196449
## intake_typeStray 0.3972592 0.3922911 0.4022901
## intake_year2020 0.7883857 0.7736289 0.8034241
## intake_year2021 0.7645434 0.7504139 0.7789389
## intake_year2022 0.6754782 0.6630926 0.6880952
## intake_year2023 0.5985743 0.5874573 0.6099017
## `Age Group at Intake`Juvenile 0.3049768 0.2983163 0.3117860
## `Age Group at Intake`Senior 2.6972385 2.6518809 2.7433718
##
## Family: binomial
## Link function: logit

## Likelihood ratio test
##
## Model 1: prealtered ~ 1
## Model 2: prealtered ~ sex + intake_year + `Age Group at Intake` + ALL_QUIN
## #Df LogLik Df Chisq Pr(>Chisq)
## 1 1 -344402
## 2 12 -322309 11 44185 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Hosmer and Lemeshow goodness of fit (GOF) test
##
## data: y_num, fitted(dog_log_model)
## X-squared = 1228.7, df = 8, p-value < 2.2e-16
##
## Call:
## glm(formula = prealtered ~ animal_type + `Age Group at Intake`,
## family = "binomial", data = dat_for_Log_R)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -0.520355 0.003491 -149.08 <2e-16 ***
## animal_typeDog -0.391409 0.004427 -88.41 <2e-16 ***
## `Age Group at Intake`Juvenile -1.193947 0.006073 -196.61 <2e-16 ***
## `Age Group at Intake`Senior 1.264550 0.006525 193.79 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 1372299 on 1112219 degrees of freedom
## Residual deviance: 1267952 on 1112216 degrees of freedom
## AIC: 1267960
##
## Number of Fisher Scoring iterations: 4
## OR 2.5 % 97.5 %
## (Intercept) 0.5943093 0.5902574 0.5983891
## animal_typeDog 0.6761037 0.6702626 0.6819958
## `Age Group at Intake`Juvenile 0.3030229 0.2994377 0.3066512
## `Age Group at Intake`Senior 3.5414970 3.4964908 3.5870824
## GVIF Df GVIF^(1/(2*Df))
## animal_type 1.086695 1 1.042447
## sex 1.011217 1 1.005593
## intake_type 1.034467 2 1.008508
## intake_year 1.002735 4 1.000341
## `Age Group at Intake` 1.062738 2 1.015328
## ALL_QUIN 1.021425 4 1.002653
##
## Call:
## glm(formula = prealtered ~ animal_type + sex + intake_type +
## intake_year + `Age Group at Intake` + ALL_QUIN, family = "binomial",
## data = dat_for_Log_R)
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) 0.138988 0.007354 18.900 < 2e-16 ***
## animal_typeDog -0.274313 0.004673 -58.702 < 2e-16 ***
## sexM 0.182303 0.004514 40.384 < 2e-16 ***
## intake_typeReturn 3.247897 0.034155 95.092 < 2e-16 ***
## intake_typeStray -0.812477 0.004567 -177.908 < 2e-16 ***
## intake_year2020 -0.189683 0.006937 -27.345 < 2e-16 ***
## intake_year2021 -0.227364 0.006834 -33.272 < 2e-16 ***
## intake_year2022 -0.324021 0.006785 -47.755 < 2e-16 ***
## intake_year2023 -0.441306 0.006888 -64.073 < 2e-16 ***
## `Age Group at Intake`Juvenile -1.224416 0.006260 -195.582 < 2e-16 ***
## `Age Group at Intake`Senior 1.193903 0.006791 175.809 < 2e-16 ***
## ALL_QUIN2 -0.322130 0.007663 -42.035 < 2e-16 ***
## ALL_QUIN3 0.056703 0.007031 8.064 7.36e-16 ***
## ALL_QUIN4 -0.186894 0.006752 -27.679 < 2e-16 ***
## ALL_QUIN5 -0.429156 0.006652 -64.512 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 1372299 on 1112219 degrees of freedom
## Residual deviance: 1191871 on 1112205 degrees of freedom
## AIC: 1191901
##
## Number of Fisher Scoring iterations: 5
## OR 2.5 % 97.5 %
## (Intercept) 1.1491101 1.1326664 1.1657926
## animal_typeDog 0.7600943 0.7531646 0.7670879
## sexM 1.1999775 1.1894072 1.2106418
## intake_typeReturn 25.7361486 24.0696961 27.5179772
## intake_typeStray 0.4437577 0.4398034 0.4477475
## intake_year2020 0.8272212 0.8160507 0.8385447
## intake_year2021 0.7966307 0.7860322 0.8073722
## intake_year2022 0.7232352 0.7136810 0.7329172
## intake_year2023 0.6431958 0.6345714 0.6519374
## `Age Group at Intake`Juvenile 0.2939293 0.2903448 0.2975580
## `Age Group at Intake`Senior 3.2999342 3.2563032 3.3441497
## ALL_QUIN2 0.7246043 0.7138021 0.7355701
## ALL_QUIN3 1.0583417 1.0438566 1.0730278
## ALL_QUIN4 0.8295319 0.8186261 0.8405831
## ALL_QUIN5 0.6510581 0.6426244 0.6596024
## 2.5 % 97.5 %
## (Intercept) 1.1326664 1.1657926
## animal_typeDog 0.7531646 0.7670879
## sexM 1.1894072 1.2106418
## intake_typeReturn 24.0696961 27.5179772
## intake_typeStray 0.4398034 0.4477475
## intake_year2020 0.8160507 0.8385447
## intake_year2021 0.7860322 0.8073722
## intake_year2022 0.7136810 0.7329172
## intake_year2023 0.6345714 0.6519374
## `Age Group at Intake`Juvenile 0.2903448 0.2975580
## `Age Group at Intake`Senior 3.2563032 3.3441497
## ALL_QUIN2 0.7138021 0.7355701
## ALL_QUIN3 1.0438566 1.0730278
## ALL_QUIN4 0.8186261 0.8405831
## ALL_QUIN5 0.6426244 0.6596024